home *** CD-ROM | disk | FTP | other *** search
GW-BASIC | 1986-11-13 | 4.2 KB | 109 lines |
- 10 KEY OFF:KEY(10) ON:ON KEY(10) GOSUB 660:KEY(9) ON:ON KEY(9) GOSUB 420:DIM S(25):FOR I=1 TO 25:S(I)=I:NEXT I:COLOR 3,0,8
- 20 CLS:T=0:N=0:GOSUB 1070:FOR I=1 TO 100:SWAP S(INT(RND*25+1)),S(INT(RND*25+1)):NEXT I
- 30 CLS:LOCATE 1,34:COLOR 0,7:PRINT" IQ Builder ":COLOR 11,0
- 40 LOCATE 2,35:PRINT"Numbers 3":COLOR 0,11
- 50 LOCATE 4,21:PRINT CHR$(201);
- 60 FOR J=1 TO 35
- 70 PRINT CHR$(205);
- 80 IF J > 35 GOTO 100
- 90 NEXT J
- 100 PRINT CHR$(187)
- 110 LOCATE 5,21:PRINT CHR$(186);:PRINT"Press <F9> to skip to next section.";
- 120 PRINT CHR$(186)
- 130 LOCATE 6,21:PRINT CHR$(186);:PRINT"Press <F10> to return to main menu.";
- 140 PRINT CHR$(186)
- 150 LOCATE 7,21:PRINT CHR$(200);
- 160 FOR J=1 TO 35
- 170 PRINT CHR$(205);
- 180 IF J > 35 GOTO 200
- 190 NEXT J
- 200 PRINT CHR$(188):COLOR 3,0
- 210 LOCATE 9,1:PRINT"There are 25 series to solve in this lesson. You'll get three chances to"
- 220 PRINT"solve each one. If you're having trouble, the computer will give you a hint."
- 230 FOR I=1 TO 100:SWAP S(INT(RND*25+1)),S(INT(RND*25+1)):NEXT I:XX=1:N=S(XX)
- 240 RESTORE
- 250 IF N>1 THEN FOR O=1 TO N-1:READ A,B,C,D,E,F,G,H,I,J,K,A$:NEXT O:Q=N-1
- 260 READ A,B,C,D,E,F,G,H,I,J,K,A$
- 270 T=T+1:Q=Q+1
- 280 PRINT:PRINT"Series" Q:COLOR 3,0:PRINT
- 290 PRINT"Enter the next two numbers in this series, separating them with a comma:"
- 300 PRINT:GOSUB 750:PRINT:COLOR 3,0
- 310 COLOR 3,0:INPUT "The next two numbers are: ",X,Y
- 320 Y1=CSRLIN:X1=POS(0)
- 330 IF (X=I)*(Y=J) THEN 380
- 340 Z=Z+1:IF Z=3 THEN 370
- 350 IF Z=2 THEN GOSUB 680:GOTO 310
- 360 LOCATE 25,1:PRINT SPC(79);:PLAY "mfn27n20t32":LOCATE 25,1:COLOR 11,4:PRINT"No! Try again.";:COLOR 3,0:TIMEOUT=3:GOSUB 1040:LOCATE 25,1:PRINT SPC(79);:LOCATE Y1-1,X1+25:PRINT SPC(6):LOCATE ,X1:GOTO 310
- 370 PLAY "mbn26n20t35":PRINT:COLOR 11,4:PRINT"No! The answer is: " I "," J;:GOTO 400
- 380 IF Z=0 THEN R=R+1
- 390 LOCATE 25,1:PRINT SPC(79);:LOCATE 25,1:PRINT"Right!";:TIMEOUT=3:GOSUB 1040:LOCATE 25,1:PRINT SPC(79);:LOCATE Y1,X1
- 400 XX=XX+1:Z=0
- 410 IF XX<26 THEN S=S(XX):GOSUB 1030:GOTO 230
- 420 COLOR 11,4:LOCATE 1,1:PRINT SPC(33):LOCATE 1,45:PRINT SPC(35)
- 430 LOCATE 2,1:PRINT SPC(33):LOCATE 2,45:PRINT SPC(35)
- 440 LOCATE 3,1:PRINT SPC(79)
- 450 LOCATE 4,1:PRINT SPC(20):LOCATE 4,58:PRINT SPC(22)
- 460 LOCATE 5,1:PRINT SPC(20):LOCATE 5,58:PRINT SPC(22)
- 470 LOCATE 6,1:PRINT SPC(20):LOCATE 6,58:PRINT SPC(22)
- 480 LOCATE 7,1:PRINT SPC(20):LOCATE 7,58:PRINT SPC(22)
- 490 LOCATE 8,1:PRINT SPC(79)
- 500 LOCATE 9,1:PRINT SPC(79)
- 510 LOCATE 10,1:PRINT SPC(79)
- 520 COLOR 11,4:GOSUB 1030:PRINT:COLOR 3,0:LOCATE 15,17
- 530 IF N<3 THEN COLOR 11,0:PRINT"You didn't give me much of a chance, did you?":GOTO 600
- 540 PRINT"You scored" R "right out of" T "or" INT(100*R/T) "percent."
- 550 IF R/T<0.6 THEN LOCATE 18,21:PRINT"I'll bet you do better next time.":TIMEOUT=7:GOSUB 1040:RUN
- 560 LOCATE 18,34:IF R/T<=0.8 THEN PRINT"Good score!":GOTO 600
- 570 IF R/T<=0.9 THEN PRINT"Very good!":GOTO 600
- 580 IF R/T<=0.99 THEN PRINT"Excellent!":GOTO 600
- 590 COLOR 19,0:PRINT"Brilliant!"
- 600 COLOR 3,0:LOCATE 25,1:PRINT "Press space bar to continue.";
- 610 IN$=INKEY$:IF IN$="" THEN 610 ELSE GOTO 670
- 620 GOSUB 1030:N=S(XX)
- 630 RESTORE
- 640 IF N>1 THEN FOR O=1 TO N-1:READ A,B,C,D,E,F,G,H,I,J,K,A$:NEXT O:Q=N-1
- 650 GOTO 260
- 660 SYSTEM
- 670 RUN "SYNONYM1
- 680 PLAY "mbn24n19t35":LOCATE 25,1:COLOR 0,4:PRINT"No! Hint: ";:GOSUB 1040
- 690 IF K=1 THEN PRINT"The numbers change by their rule " A$;
- 700 IF K=2 THEN PRINT"Look for more than one rule. One rule is " A$;
- 710 IF K=3 THEN PRINT"The amount of change gets " A$ " each time.";
- 720 IF K=4 THEN PRINT"Alternating series. One rule is " A$;
- 730 IF K=5 THEN PRINT"Look for groups of " A$ " numbers.";
- 740 GOSUB 1040:LOCATE Y1-1,X1+25:PRINT SPC(6):LOCATE ,X1:RETURN
- 750 PRINT:COLOR 4,11:LOCATE ,23:PRINT "VARPTR" STRING$(32,"SOUND") "COLOR"
- 760 LOCATE ,23:PRINT "CALL";:COLOR 11,4:PRINT A B C D E F G H;:COLOR 4,11:PRINT "CALL"
- 770 LOCATE ,23:PRINT "CLS" STRING$(32,"SOUND") "'":PRINT:RETURN
- 780 DATA 10,10,10,11,11,11,12,12,12,13,4,+1
- 790 DATA 13,18,24,31,39,48,58,69,81,94,3,greater
- 800 DATA 11,10,15,14,19,18,23,22,27,26,2,-1
- 810 DATA 13,10,15,10,16,10,18,10,19,10,4,+2
- 820 DATA 56,55,53,50,46,41,35,28,20,10,3,greater
- 830 DATA 11,12,13,16,17,24,25,40,41,72,2,* 2
- 840 DATA 12,16,20,24,28,32,36,40,44,48,1,+4
- 850 DATA 17,26,34,41,47,52,56,59,61,60,3,less
- 860 DATA 14,17,19,22,24,27,29,32,34,37,2,+3
- 870 DATA 11,19,13,17,15,15,17,13,19,11,4,-1
- 880 DATA 13,14,18,16,17,18,19,20,18,22,4,+0
- 890 DATA 11,11,21,12,12,22,13,13,23,14,4,+1
- 900 DATA 42,39,36,33,30,27,24,21,18,15,1,-3
- 910 DATA 11,12,14,17,21,26,32,39,47,56,3,greater
- 920 DATA 19,14,18,13,17,12,16,11,15,10,4,-1
- 930 DATA 12,15,18,18,21,24,24,27,30,30,2,+3
- 940 DATA 12,13,15,18,22,27,33,40,48,57,3,greater
- 950 DATA 11,20,28,35,41,46,50,53,55,54,3,less
- 960 DATA 10,12,17,19,24,26,31,33,38,40,2,+5
- 970 DATA 14,10,17,12,23,14,32,16,44,18,4,+2
- 980 DATA 10,11,17,18,24,25,31,32,38,39,2,+1
- 990 DATA 5,2,6,4,8,5,9,7,11,8,4,+1 +2
- 1000 DATA 11,14,16,17,17,16,14,11,7,2,3,less
- 1010 DATA 7,9,8,10,9,11,10,12,11,13,4,-1
- 1020 DATA 1,2,5,5,9,8,13,11,17,14,4,+3
- 1030 FOR Y=11 TO 24:LOCATE Y,1:PRINT SPC(79);:NEXT Y:LOCATE 11,1:RETURN
- 1040 TIMEOUT$=TIME$:TIME2=VAL(LEFT$(TIMEOUT$,2))*120+VAL(MID$(TIMEOUT$,4,2))*60+VAL(RIGHT$(TIMEOUT$,2))
- 1050 TIMEOUT$=TIME$:TIME3=VAL(LEFT$(TIMEOUT$,2))*120+VAL(MID$(TIMEOUT$,4,2))*60+VAL(RIGHT$(TIMEOUT$,2))
- 1060 IF TIMEOUT > TIME3 - TIME2 THEN 1050 ELSE RETURN
- 1070 RNDTIME$=TIME$:RNDVAL=VAL(LEFT$(RNDTIME$,2))*120+VAL(MID$(RNDTIME$,4,2))*60+VAL(RIGHT$(RNDTIME$,2)):RANDOMIZE RNDVAL:RETURN
- 1080 IKEY$=INKEY$:IF IKEY$="" THEN 1080 ELSE RETURN
-